Future এবং Callback হ্যান্ডেল করা

Java Technologies - অ্যাপাচি এইচটিটিপি ক্লায়েন্ট (Apache HTTP Client) Async HTTP Requests |
144
144

অ্যাপাচি HTTP ক্লায়েন্ট (Apache HTTP Client) একটি জনপ্রিয় লাইব্রেরি যা HTTP রিকোয়েস্ট এবং রেসপন্স পরিচালনা করার জন্য ব্যবহৃত হয়। এই ক্লায়েন্টে অ্যাসিঙ্ক্রোনাস অপারেশন পরিচালনা করা সম্ভব, যার মাধ্যমে রিকোয়েস্ট পাঠানোর পর সিস্টেম ব্লক হয় না এবং সেসময় অন্য কাজ করা যায়। Future এবং Callback দুটি গুরুত্বপূর্ণ ধারণা যা অ্যাসিঙ্ক্রোনাস প্রক্রিয়ার সাথে সম্পর্কিত।


Future ব্যবহার করা

Future ক্লাসটি Java-তে অ্যাসিঙ্ক্রোনাস অপারেশন ব্যবস্থাপনার জন্য ব্যবহৃত হয়। এটি একটি ডামি রিপ্লাই যা আসন্ন রেসপন্সটি ধারণ করে, যাতে আপনি পরে এটি পেতে পারেন।

Future এর মাধ্যমে HTTP রিকোয়েস্ট প্রেরণ

CloseableHttpAsyncClient httpClient = HttpAsyncClients.createDefault();
httpClient.start();

HttpGet request = new HttpGet("http://example.com");
Future<HttpResponse> future = httpClient.execute(request, null);

// রেসপন্স পাওয়ার জন্য অপেক্ষা করা
HttpResponse response = future.get();
System.out.println(response.getStatusLine());

এখানে future.get() মেথডটি রেসপন্স পাওয়ার জন্য অপেক্ষা করে, এবং যখন রেসপন্স আসে, তখন এটি প্রদান করে।


Callback ব্যবহার করা

Callback এক ধরনের কলব্যাক ইন্টারফেস, যা অ্যাসিঙ্ক্রোনাস অপারেশন সম্পন্ন হওয়ার পরে কল করা হয়। এর মাধ্যমে আপনি রিকোয়েস্টের পরবর্তী কাজগুলোর জন্য কোন নির্দিষ্ট কার্যক্রম নির্ধারণ করতে পারেন।

Callback এর মাধ্যমে HTTP রিকোয়েস্ট প্রেরণ

CloseableHttpAsyncClient httpClient = HttpAsyncClients.createDefault();
httpClient.start();

HttpGet request = new HttpGet("http://example.com");
httpClient.execute(request, new FutureCallback<HttpResponse>() {
    @Override
    public void completed(HttpResponse result) {
        System.out.println("Request completed successfully: " + result.getStatusLine());
    }

    @Override
    public void failed(Exception ex) {
        System.out.println("Request failed: " + ex.getMessage());
    }

    @Override
    public void cancelled() {
        System.out.println("Request was cancelled");
    }
});

এখানে FutureCallback ইন্টারফেসটি ব্যবহৃত হয়েছে, যেখানে completed(), failed(), এবং cancelled() মেথডগুলো HTTP রিকোয়েস্টের বিভিন্ন ফলাফল অনুযায়ী কল করা হয়।


সারাংশ

অ্যাপাচি HTTP ক্লায়েন্টে Future এবং Callback ব্যবহারের মাধ্যমে অ্যাসিঙ্ক্রোনাস HTTP রিকোয়েস্ট প্রেরণ এবং তাদের ফলাফল পরিচালনা করা সম্ভব। Future ব্যবহার করে আপনি রিকোয়েস্টের পরে সিস্টেম ব্লক হওয়া ছাড়াই রেসপন্স পেতে পারেন, আর Callback ব্যবহারের মাধ্যমে নির্দিষ্ট কার্যক্রমগুলি সম্পন্ন করতে পারেন যখন রিকোয়েস্ট সফলভাবে সম্পন্ন হয়, ব্যর্থ হয় অথবা বাতিল হয়।


common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion